///////////////////////////////////////////////////////////////////////////////
//	Data types
///////////////////////////////////////////////////////////////////////////////

DATA_TYPE SPRITE_LIST "Fonts"
{
	LIST_FILE "lists\fonts.list"
}

DATA_TYPE SPRITE_LIST "Sprites"
{
	LIST_FILE "lists\sprites.list"
}

DATA_TYPE LIST "Texts"
{
	-1 = "default"
	LIST_FILE "..\text\text.gts"
}

DATA_TYPE LIST "boolean"
{
	0	= "false"
	1	= "true"
}

DATA_TYPE LIST "V_Align_options"
{
	1	= "TOP"
	8	= "BOTTOM"
	16	= "CENTER"
}

DATA_TYPE LIST "H_Align_options"
{
	2	= "LEFT"
	4	= "RIGHT"
	16	= "CENTER"
}

DATA_TYPE LIST "Gradient_Options"
{
	0	= "Left To Right"
	1	= "Up to Down"
}

DATA_TYPE LIST "Direction"
{
	0	= "horizontal"
	1	= "vertical"
}

DATA_TYPE LIST "PageBasedAutoShift"
{
	-1	= "Disabled"
	0	= "Shift To Top"
	1	= "Shift To Bottom"
}
///////////////////////////////////////////////////////////////////////////////
//	Templates
///////////////////////////////////////////////////////////////////////////////

TEMPLATE OBJECT_LAYER "SpriteBased"
{ 
	ID 0	
	SPRITE_LIST "Sprites"
	SET SPRITE PARAM[0]
	SET MODULE -1	
	SET FRAME PARAM[1]		
	SET ANIM PARAM[4]
	SET AFRAME 0
	PARAMS
	{
		0 	"spriteID" "" TYPE "Sprites" EXPORT UINT8
		0 	"frameID" "-1 == show anim frame instead" TYPE FRAMESDESC[PARAM[0]] EXPORT INT16
		1	"isVisible" "" TYPE "boolean" EXPORT UINT8			
		-1	"animID" "-1 == none" TYPE ANIMSDESC[PARAM[0]] EXPORT INT8
		-1	"animCount" "-1 == loop" TYPE ANIMSDESC[PARAM[0]] EXPORT INT8
		100	"scale" "0-200" EXPORT UINT8
	}	
}

TEMPLATE OBJECT_LAYER "SelectRect"
{
	ID 1
	SPRITE "dummy.sprite"
	SET MODULE -1	
	SET FRAME 0
	SET RECT_AREA 0 0 PARAM[0] PARAM[1] RGB(0, 255, 0)	
	
	PARAMS
	{
		40	"width"	"" FLAGS {W} EXPORT UINT16		 
		20	"height" "" FLAGS {H} EXPORT UINT16
	}		
}

TEMPLATE OBJECT_LAYER "SelectPoint"
{
	ID 2	
	SPRITE "cross.sprite"
	SET MODULE -1	
	SET FRAME 0
		
	PARAMS
	{
	}
}

TEMPLATE OBJECT_LAYER "StringBased"
{
	ID 3	
	SPRITE "font.sprite"	
	SET MODULE -1	
	SET FRAME 0	
	
	PARAMS
	{
		0 	"fontID" "" TYPE "Fonts" EXPORT UINT8
		0 	"textID" "" TYPE "Texts" EXPORT INT16
		1	"isVisible" "" TYPE "boolean" EXPORT UINT8		
		2	"hAllign" "" TYPE "H_Align_options" EXPORT UINT8
		1	"vAllign" "" TYPE "V_Align_options" EXPORT UINT8		
	}	
}

TEMPLATE OBJECT_LAYER "Button"
{ 
	ID 4	
	SPRITE_LIST "Sprites"
	SET SPRITE PARAM[0]	
	SET MODULE -1	
	SET FRAME PARAM[1]	
	SET FRAME PARAM[1]	
	
	PARAMS
	{
		0 	"spriteID" "" TYPE "Sprites" EXPORT INT8
		0 	"frameID" "" TYPE FRAMESDESC[PARAM[0]] EXPORT INT16
		1	"isVisible" "" TYPE "boolean" EXPORT UINT8		
		0 	"framePress" "paint it if the button is choosen" TYPE FRAMESDESC[PARAM[0]] EXPORT INT16			
		1	"isTapable" "" TYPE "boolean" EXPORT UINT8
		0	"isFocus" "" TYPE "boolean" EXPORT UINT8
		0	"isPressed" "" TYPE "boolean" EXPORT UINT8		
		100	"scale" "0-200" EXPORT UINT8
	}
}

TEMPLATE OBJECT_LAYER "ScrollList"
{
	ID 5
	SPRITE "dummy.sprite"
	SET MODULE -1	
	SET FRAME 0
	SET RECT_AREA 0 0 PARAM[0] PARAM[1] RGB(0, 255, 0)	
	
	PARAMS
	{
		40	"width"	"" FLAGS {W} EXPORT UINT16		 
		20	"height" "" FLAGS {H} EXPORT UINT16
	}	
}

TEMPLATE OBJECT_LAYER "ScrollingText"
{
	ID 6
	SPRITE "dummy.sprite"
	SET MODULE -1	
	SET FRAME 0	
	SET RECT_AREA 0 0 PARAM[0] PARAM[1] RGB(0, 255, 0)		
		
	PARAMS
	{
		40	"width"	"" FLAGS {W} EXPORT UINT16
		20	"height" "" FLAGS {H} EXPORT UINT16
		1	"isVisible" "" TYPE "boolean" EXPORT UINT8
		0 	"fontID" "" TYPE "Fonts" EXPORT UINT8
		0 	"textID" "" TYPE "Texts" EXPORT INT16		
		2	"hAllign" "" TYPE "H_Align_options" EXPORT UINT8
		1	"vAllign" "" TYPE "V_Align_options" EXPORT UINT8		
		10	"speed" "Scroll speed (pixels per frame)" EXPORT INT8			
	}	
}